"""进程池中的进程不能共享队列"""
# encoding=utf-8
import time
from multiprocessing import Pool, Queue, Process


def func(q):
    print('*' * 30)
    q.put('1111')


if __name__ == "__main__":
    queue = Queue()  # 直接用multiprocessing.Queue生成队列
    pool = Pool(4)  # 生成一个容量为4的进程池
    for i in range(5):
        pool.apply_async(func, (queue,))  # 向进程池提交目标请求
    pool.close()
    pool.join()

    print(queue.qsize())
"""解决方法有两种：一是用Process生成进程，二是用multiprocessing.Manager.Queue()生成共享队列。修改后的代码如下："""
